package com.topisv.tms.rest.qimen.qmentity.request.deliveryorderconfirm;

import java.util.List;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;

@XmlAccessorType(XmlAccessType.FIELD)
public class DeliveryOrder {
	
	@XmlElement(name = "deliveryOrderCode")
	private String deliveryOrderCode;		//出库单号, string (50)
	@XmlElement(name = "deliveryOrderId")
	private String deliveryOrderId;		//仓储系统出库单号, string (50)
	@XmlElement(name = "warehouseCode")
	private String warehouseCode;			//仓库编码
	@XmlElement(name = "orderType")
	private String orderType;				//出库单类型, string (50)，JYCK=一般交易出库,HHCK=换货出库,BFCK=补发出库，
	@XmlElement(name = "status")
	private String status;				//出库单状态, NEW-未开始处理,  ACCEPT-仓库接单 , PARTDELIVERED-部分发货完成,  DELIVERED-发货完成,  EXCEPTION-异常,  CANCELED-取消,  CLOSED-关闭,  REJECT-拒单,  CANCELEDFAIL-取消失败
	@XmlElement(name = "outBizCode")
	private String outBizCode;				//string (50) , 外部业务编码, 消息ID, 用于去重, 一个合作伙伴中要求唯一, 多次确认时, 每次传入要求唯一 ，条件必填，条件为一单需要多次确认时
	@XmlElement(name = "confirmType")
	private int confirmType;			//支持出库单多次发货, int，多次发货后确认时0 表示发货单最终状态确认；1 表示发货单中间状态确认；
	@XmlElement(name = "orderConfirmTime")
	private String orderConfirmTime;		//订单完成时间
	@XmlElement(name = "operatorCode")
	private String operatorCode;			//当前状态操作员编码,
	@XmlElement(name = "operatorName")
	private String operatorName;			//当前状态操作员姓名
	@XmlElement(name = "operateTime")
	private String operateTime;			//当前状态操作时间
	
	@XmlElementWrapper(name = "invoices")
	@XmlElement(name = "invoice")
	private List<Invoice> invoice;

	public String getDeliveryOrderCode() {
		return deliveryOrderCode;
	}

	public void setDeliveryOrderCode(String deliveryOrderCode) {
		this.deliveryOrderCode = deliveryOrderCode;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getDeliveryOrderId() {
		return deliveryOrderId;
	}

	public void setDeliveryOrderId(String deliveryOrderId) {
		this.deliveryOrderId = deliveryOrderId;
	}

	public String getWarehouseCode() {
		return warehouseCode;
	}

	public void setWarehouseCode(String warehouseCode) {
		this.warehouseCode = warehouseCode;
	}

	public String getOrderType() {
		return orderType;
	}

	public void setOrderType(String orderType) {
		this.orderType = orderType;
	}

	public String getOutBizCode() {
		return outBizCode;
	}

	public void setOutBizCode(String outBizCode) {
		this.outBizCode = outBizCode;
	}

	public int getConfirmType() {
		return confirmType;
	}

	public void setConfirmType(int confirmType) {
		this.confirmType = confirmType;
	}

	public String getOrderConfirmTime() {
		return orderConfirmTime;
	}

	public void setOrderConfirmTime(String orderConfirmTime) {
		this.orderConfirmTime = orderConfirmTime;
	}

	public String getOperatorCode() {
		return operatorCode;
	}

	public void setOperatorCode(String operatorCode) {
		this.operatorCode = operatorCode;
	}

	public String getOperatorName() {
		return operatorName;
	}

	public void setOperatorName(String operatorName) {
		this.operatorName = operatorName;
	}

	public String getOperateTime() {
		return operateTime;
	}

	public void setOperateTime(String operateTime) {
		this.operateTime = operateTime;
	}

	public List<Invoice> getInvoice() {
		return invoice;
	}

	public void setInvoice(List<Invoice> invoice) {
		this.invoice = invoice;
	}	 		
	
	
}
